export {};

// 查找重复元素

const findRepeat = (arr: number[]): number[] => {
  // 方式1
  // const result: number[] = [];

  // arr.forEach((v) => {
  //   const index = arr.indexOf(v);
  //   const lastIndex = arr.lastIndexOf(v);
  //   if (index !== lastIndex) {
  //     // 重复了！
  //     !result.includes(v) && result.push(v);
  //   }
  // });

  // return result;

  // 方式二
  return arr.reduce((p, n) => {
    return arr.indexOf(n) === arr.lastIndexOf(n) ? p : p.includes(n) ? p: p.concat(n);
  }, [] as number[]);
};

const s = findRepeat([1, 1, 2, 2, 3, 4, 5, 4, 8, 9, 1, 1, 1, 1, 1]); // => [1,2,4]
console.log(s);
